package com.liu.jpa.command;

import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.metadata.CellData;
import com.alibaba.excel.metadata.Head;
import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.alibaba.excel.write.style.column.AbstractColumnWidthStyleStrategy;
import com.liu.jpa.dao.WeekSummaryRepository;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.ArrayList;
import java.util.List;

//public class ExcelHelper {

//    @Autowired
//    private WeekSummaryRepository dao;
//
//    //复杂动态表头生成
//    private List<List<String>> generatorHead() {
//        String nowWeek = "第" + 23 + "周项目汇报";
//        List<List<String>> list = new ArrayList<List<String>>();
//        ArrayList<String> intHead = new ArrayList<>();
//        intHead.add(nowWeek);
//        intHead.add("项目编码");
//        ArrayList<String> nameHead = new ArrayList<>();
//        nameHead.add(nowWeek);
//        nameHead.add("项目名称");
//        ArrayList<String> expHead = new ArrayList<>();
//        expHead.add(nowWeek);
//        expHead.add("项目说明");
//        ArrayList<String> compHead = new ArrayList<>();
//        compHead.add(nowWeek);
//        compHead.add("项目进度");
//        ArrayList<String> anaHead = new ArrayList<>();
//        anaHead.add(nowWeek);
//        anaHead.add("完成情况");
//        list.add(intHead);
//        list.add(nameHead);
//        list.add(expHead);
//        list.add(compHead);
//        list.add(anaHead);
//        return list;
//    }
//
//
//    public void reportExcel(){
//        // 这里需要设置不关闭流
//        WriteCellStyle headWriteCellStyle = new WriteCellStyle();
//        //设置背景颜色
//        headWriteCellStyle.setFillForegroundColor(IndexedColors.WHITE.getIndex());
//        //内容策略
//        WriteCellStyle contentWriteCellStyle = new WriteCellStyle();
//        //设置 水平居中
//        contentWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);
//        HorizontalCellStyleStrategy horizontalCellStyleStrategy =
//                new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle);
//        EasyExcel.write("E://testExcel.xlsx").autoCloseStream(Boolean.FALSE)
//                .registerWriteHandler(new CustomizeColumnWidth()).registerWriteHandler(horizontalCellStyleStrategy)
//                .head(generatorHead()).sheet("模板")
//                //获取数据填充
//                .doWrite(dao.findAll());
//    }
//}


